package sr.myserver.service;

import sr.myserver.vo.Login;
import sr.myserver.vo.Passwd;
import sr.myserver.vo.common.Basic;

import javax.servlet.http.HttpServletResponse;

/**
 * 用户权限状态管理
 *
 * @author sirui
 */
public interface LoginService {

    /**
     * 用户登录缓存增加
     *
     * @param userId 用户编号
     * @param value  token值
     */
    void add(String userId, String value);

    /**
     * 用户登录缓存删除
     *
     * @param userId 用户编号
     */
    void remove(String userId);

    /**
     * 用户登录缓存获取
     *
     * @param userId 用户编号
     * @return token值
     */
    String get(String userId);

    /**
     * 系统登录
     *
     * @param entity   请求参数
     * @param response http 对象
     * @return 响应码和消息
     */
    Basic.Response login(Login.Request entity, HttpServletResponse response);


    /**
     * 修改密码
     *
     * @param entity http对象
     * @return 响应码和消息
     */
    Basic.Response updatePass(Passwd.Request entity);

}
